import java.awt.Rectangle;
import java.io.Serializable;

public class SelecaoEste implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = -7250864653365764672L;

	private Rectangle retanguloEste;
	
	private SelecaoTipo selecaoTipo = SelecaoTipo.ESTE;

	private Retangulo retanguloEnvolvente;
	
	private Identificador identificador;

	public Identificador getIdentificador() {
		return identificador;
	}

	public void setIdentificador(Identificador identificador) {
		this.identificador = identificador;
	}

	public SelecaoEste(Identificador identificador,
			Retangulo retanguloEnvolvente) {
		this.retanguloEnvolvente = retanguloEnvolvente;
		this.identificador = identificador;
		construirRetangulo();
	}

	public void construirRetangulo() {

		retanguloEste = new Rectangle(this.retanguloEnvolvente
				.getPontoSuperiorEsquerdo().getX()
				+ this.retanguloEnvolvente.getTamanho().getAltura() - 8,
				this.retanguloEnvolvente.getPontoSuperiorEsquerdo().getY()
						+ this.retanguloEnvolvente.getTamanho().getLargura()
						/ 2 - 8 / 2, 8, 8);
	}

	public boolean contem(Coordenada coordenada) {
		return (coordenada.getX() >= retanguloEste.x
				&& coordenada.getX() <= retanguloEste.x + 8
				&& coordenada.getY() >= retanguloEste.y && coordenada.getY() <= retanguloEste.y + 8);
	}

	public Rectangle getDesenhar() {
		return retanguloEste;

	}

	public SelecaoTipo getSelecaoTipo() {
		return selecaoTipo;
	}

	public void setSelecaoTipo(SelecaoTipo selecaoTipo) {
		this.selecaoTipo = selecaoTipo;
	}

}